function [wave,period,scale,coi,power,sig95,err,global_ws,global_signif,dj,dt]=wavelet1D(x,vec)


% --------------------------------------------------------------
% Fonction basee sur l'analyse en ondelettes
% d'apres: C. Torrence (January 1998)
% (See "http://paos.colorado.edu/research/wavelets/")
% 
% adaptee pour l'analyse en ondelettes de matrices a deux dimensions
% (ou de donnees formattees et localisees de type lon,lat,data)
%
% 
% INPUT: x: coordonnees x
%         
%      
%        vec: donnees (Attention, il ne doit pas y avoir de 
%              donnees manquantes !!!)
%
%
% OUTPUT: see wavetest.m
%        
%         err: if 1 -> NaN value in vec
%      
%
% Programmes necessaires au filtrage: spatial_wavelet.m
%                                     wavetest.m
%                                     wavelet.m
%                                     wave_signif.m
%                                     wave_bases.m
%                                     chisquare_inv.m
%                                     chisquare_solve.m
% 
%
% Remarque: Notations basees sur une analyse spatiale mais l'analyse 
% peut etre temporelle.
%
% G. Charria (Oct 2006)
% --------------------------------------------------------------

init_time=clock;
disp(' ---- Beginning of wavelet analysis ---- ')

% ---- Analyse en ondelettes spatiale

pad = 1;      % pad the time series with zeroes (recommended)
dj = 0.25;    % this will do 4 sub-octaves per octave
j1 = 9/dj;    % this says do 7 powers-of-two with dj sub-octaves each
lag1 = 0.72;  % lag-1 autocorrelation for red noise background
%lag1 = 0.0; % white noise
mother = 'Morlet';


% ---- Verification de valeurs presentes a cette latitude
% index=find(isnan(vec)==0);
% if (isempty(index)==0)
if ~isempty(find(~isnan(vec),1))

    dt=mean(diff(squeeze(x)));
    t0=x(1);

    s0 = 2*dt;

    % ---- Analyse en ondelettes spatiale
    [wave,period,scale,coi,power,sig95,global_ws,global_signif]=wavetest(dt,t0,pad,dj,j1,lag1,mother,vec);
    err=0;

    %if (isempty(find(isnan(wave)==0))==1)
    if isempty(find(~isnan(wave),1))
        err=1;
    end

else
    err=1;
end

disp(['Temps d''execution:',num2str(etime(clock,init_time)/60),' min'])
disp(' ---- End of wavelet analysis ---- ')
